/**
 * 菜单Mapper接口
 * 该接口继承自MyBatis-Plus的BaseMapper
 * 提供菜单相关的数据库操作
 */
package cc.mrbird.febs.system.dao;

import cc.mrbird.febs.system.domain.Menu;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.List;

/**
 * 菜单Mapper接口
 * 处理菜单表的CRUD操作以及自定义查询
 * @author MrBird
 */
public interface MenuMapper extends BaseMapper<Menu> {

    /**
     * 查询用户权限
     *
     * @param userName 用户名
     * @return 该用户所具有的权限列表
     */
    List<Menu> findUserPermissions(String userName);

    /**
     * 查询用户菜单
     *
     * @param userName 用户名
     * @return 该用户可访问的菜单列表
     */
    List<Menu> findUserMenus(String userName);

    /**
     * 查找当前菜单/按钮关联的用户 ID
     *
     * @param menuId 菜单/按钮ID
     * @return 用户 ID集合
     */
    List<String> findUserIdsByMenuId(String menuId);
}